1. Field of the Invention
The present invention pertains to the field of personal computer systems. More particularly, this invention relates to system development and debug tools for power management functions in a computer system.
2. Art Background
In-circuit emulators are commonly employed to develop and debug computer systems including portable computer systems. A typical in-circuit emulator provides a processor emulation module and a host computer. The processor emulation module emulates processor functions for a target computer system. The host computer controls the emulation functions. The processor emulation module is usually inserted into the target computer system in place of the target processor. The processor emulation module emulates the target processor according to user commands entered on the host processor.
Typically, such in-circuit emulators perform a variety of emulation functions. For example, in-circuit emulators usually perform emulation functions for downloading and modifying target system software and examining target system memory. Such in-circuit emulators also commonly provide processor control functions such as run, halt, and run until the occurrence of a breakpoint condition. In addition, such in-circuit emulators typically enable examination of the internal processor registers.
Portable personal computer systems typically implement a variety of hardware power control functions. Such hardware power control functions may include hardware functions for powering down unused peripherals, as well as sleep modes for the processor and other circuitry. Such hardware power control functions increase battery life of the portable personal computer system by minimizing power consumption.
A typical portable computer system implements system power management software for controlling the hardware power control functions. Such system power management software usually determines conditions for power reduction and enables the appropriate hardware power control function. For example, the system power management software may detect a reduction in accesses to a disk drive, and then spin down the disk drive to minimize power demands on the battery.
One prior processor for a portable computer system implements a system management interrupt mechanism for the power management functions. The system management interrupt directs processor execution to a system management interrupt service routine. The processor functions in a system management mode while servicing the system management interrupt. The system management interrupt service routine determines conditions for power reduction and enables the appropriate hardware power control function. The interrupt service routine for the system management mode is stored in a system management overlay memory accessible only while the processor is in the system management mode.
Unfortunately, prior in-circuit emulators are unsuitable for developing and debugging the power control functions in such prior systems. For example, prior in-circuit emulators are unable to break emulation upon entry into the system management mode. Moreover, prior in-circuit emulators cannot access the system management overlay memory while the processor is not in the system management mode. As a consequence, such prior in-circuit emulators cannot easily load and modify the power control software in the system management overlay memory, and therefore increase the difficulty of developing and debugging power management functions for the computer system.